package com.atguigu.bigdata.scala.chapter03;

public class Scala02_Oper_Java_1 {
    public static void main(String[] args) {

        // 阶乘 ： 一个大于1的数的阶乘等于这个数乘以它减一的阶乘
        // 5! = 5 * 4! = 5 * 4 * 3! = 5 * 4 * 3 * 2! = 5 * 4 * 3 * 2 * 1
        int result = test(5);
        System.out.println(result);
    }
    // 阶乘
    // java.lang.StackOverflowError
    public static int test( int num ) {
        if ( num <= 1 ) {
            return 1;
        } else {
            //int v = num--; // v = 5, num = 4
            //return num * test(v);
            return num * test(num-1);
        }
    }
}
